package com.springboot.springautowired.javaDesignModel.strategy.issue;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

/**
 * 这种写法违背了设计模式6大原则中的：
 *    开闭原则--对扩展开放、对修改关闭
 *    单依职责原则--要求逻辑单一，便于复用
 * @author mac
 * @date 2021/9/18 4:45 下午
 */
@Service
public class PayService {
    @Autowired
    private AliaPay aliaPay;
    @Autowired
    private WeixinPay weixinPay;
    @Autowired
    private JingDongPay jingDongPay;


    public void toPay(String code) {
        if ("alia".equals(code)) {
            aliaPay.pay();
        } else if ("weixin".equals(code)) {
            weixinPay.pay();
        } else if ("jingdong".equals(code)) {
            jingDongPay.pay();
        } else {
            System.out.println("找不到支付方式");
        }
    }
}
